.shuo {
    display: flex;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    .item {
        flex: 1;
        height: 100%;
        .content {
            margin: 20px 0 0 20px;
            .title {
                color: white;
                padding: 5px 10px 5px 20px;
                font-size: 18px;
                background: #FF8B26;
                border-radius: 5px;
                position: relative;
                display: inline-flex;
                align-items: center;
                &::before {
                    content: "";
                    position: absolute;
                    left: 5px;
                    height: 70%;
                    background-color: white;
                    width: 5px;
                    border-radius: 25px;
                }
            }
        }
        .id-card {
            .info {
                margin-top: 35px;
                font-size: 15px;
                .avatar {
                    $size: 150px;
                    height: $size;
                    width: $size;
                    object-fit: cover;
                    border-radius: 100%;
                }
                .key,
                .nick {
                    .input-line {
                        display: flex;
                        align-items: center;
                        input {
                            margin-left: 22px;
                            font-size: 13px;
                            outline: unset;
                            border: unset;
                            padding: unset;
                            transition: all .3s;
                        }
                        &:hover input {
                            margin-left: 12px;
                            padding: 10px;
                            border-radius: 10px;
                            box-shadow: 0 5px 10px rgba(111, 104, 198, .2) inset;
                            font-size: 13px;
                            transition: all .3s;
                        }
                        svg {
                            opacity: 0;
                            transform: translateX(100%);
                            transition: all .3s;
                            margin-left: 12px;
                            font-size: 22px;
                            color: rgba(127, 160, 31, .4);
                        }
                        &:hover svg {
                            opacity: 1;
                            transform: translateX(0%);
                            transition: all .3s;
                        }
                    }
                }
                >div {
                    height: 25px;
                    display: flex;
                    align-items: center;
                    margin-top: 25px;
                    div:nth-child(1) {
                        width: 40px;
                        background-color: #F96265;
                        color: white;
                        padding: 3px 6px;
                        border-radius: 5px;
                        font-size: 16px;
                        display: inline-flex;
                        justify-content: center;
                    }
                    span:nth-child(2),
                    input:nth-child(2) {
                        margin-left: 22px;
                        font-size: 13px;
                    }
                }
            }
        }
        .his {
            width: 95%;
            .his-border {
                overflow: hidden;
                .line {
                    max-height: calc(100vh - 98px);
                    overflow-y: scroll;
                    margin-top: 30px;
                    scroll-behavior: smooth;
                    scroll-snap-type: x mandatory;
                    width: 103%;
                    .line-item {
                        flex-shrink: 0;
                        scroll-snap-align: end;
                        margin-bottom: 50px;
                        .his-c {
                            width: 95%;
                            .ani-p {
                                display: flex;
                                align-items: center;
                                position: relative;
                                .shuo-c {
                                    display: inline-grid;
                                    width: calc(100% - 170px);
                                    overflow: hidden;
                                    .text {
                                        font-size: 13px;
                                        text-overflow: ellipsis;
                                        overflow: hidden;
                                        color: #CCCCFF;
                                    }
                                    .img-c {
                                        display: flex;
                                        flex-direction: row;
                                        flex-wrap: wrap;
                                        width: calc(100% - 8px);
                                        height: calc(100% - 8px);
                                        padding: 4px;
                                        background: rgba(204, 204, 255, .7);
                                        overflow: hidden;
                                        transition: all .5s;
                                        .img-border {
                                            width: 25%;
                                            height: 0;
                                            padding-bottom: 25%;
                                            position: relative;
                                            .img-p {
                                                position: absolute;
                                                top: 0;
                                                bottom: 0;
                                                left: 0;
                                                right: 0;
                                                margin: 4px;
                                                border: 4px solid rgba(255, 255, 255, .4);
                                                border-radius: 5px;
                                                img {
                                                    width: 100%;
                                                    height: 100%;
                                                    object-fit: cover;
                                                    border-radius: 5px;
                                                }
                                            }
                                        }
                                    }
                                }
                                .time {
                                    color: #99CC99;
                                    font-size: 12px;
                                    position: absolute;
                                    right: 0;
                                    top: 0;
                                }
                            }
                            .user {
                                opacity: 0;
                                margin-bottom: 10px;
                                display: flex;
                                align-items: center;
                                color: #FF6666;
                                img {
                                    border-radius: 100%;
                                    height: 60px;
                                    width: 60px;
                                    object-fit: cover;
                                    margin-right: 10px;
                                }
                            }
                        }
                        .hover {
                            .ani-p {
                                display: block;
                                padding-bottom: 20px;
                                .shuo-c {
                                    width: 100%;
                                    border-radius: 12px;
                                    overflow: hidden;
                                    border: 1px dashed;
                                    border-color: #ccf;
                                    transition: border-color 0s;
                                    .text {
                                        font-size: 13px;
                                        text-overflow: unset;
                                        word-break: break-all;
                                        background-color: rgba(204, 204, 255, 1);
                                        color: white;
                                        padding: 10px;
                                    }
                                    .img-c {
                                        transition: all .5s;
                                    }
                                }
                                .hover {
                                    margin-top: 10px;
                                }
                                .time {
                                    top: 98%;
                                }
                            }
                            .user {
                                opacity: 1;
                            }
                        }
                    }
                }
            }
        }
    }
    .background {
        position: absolute;
        right: 20px;
        bottom: 20px;
        height: 600px;
        z-index: -1;
        filter: blur(3px);
    }
}

* {
    transition: all .5s;
}